package net.csdn.business.kanban.common.domain.resp;

import cn.hutool.json.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * @ClassName KanbanViewResp
 * @Description TODO
 * @Author liuzhisheng
 * @Date 2023/9/18
 **/
@NoArgsConstructor
@AllArgsConstructor
@Data
public class KanbanViewResp{

    @Schema(name = "visibleNum", description = "字段可见数量")
    private Long  visibleNum;

    @Schema(name = "hideNum", description = "字段隐藏数量")
    private Long hideNum;

    @Schema(name = "id", description = "看板视图ID")
    private Long id;

    @Schema(name = "kanban_id", description = "看板ID")
    private String kanbanId;

    @Schema(name = "view_name", description = "视图名称")
    private String viewName;

    @Schema(name = "priority", description = "视图排序优先级")
    private Integer priority;

    @Schema(name = "view_number", description = "视图数量")
    private Integer viewNumber;

    @Schema(name = "filterObj_json", description = "过滤条件")
    private JSONObject filterObj_json;

    @Schema(name="creator_id",description = "创建人ID")
    private String creatorId;

    @Schema(name = "created_at", description = "创建时间")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    @Schema(name = "updated_at", description = "更新时间")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatedAt;

    @Schema(name = "fieldDisplayJson_json", description = "字段是否展示JSON（包含所有字段）")
    private JSONArray fieldDisplayJson_json;

    @Schema(name="kanban_type",description = "看板类型：1:table 2:board 3:roadmap")
    private Integer kanbanType;
}
